package cn.tedu.cn.tedu.collection2;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.Iterator;

/*测试collectio接口*/
public class TestCollection {
    public static void main(String[] args) {
        Collection<Integer>  c=new ArrayList<>();
        /*<Integer>是泛型*/
        c.add(100);
        c.add(200);
        c.add(300);
        c.add(400);
        c.add(500);
        System.out.println(c);

        /*c.clear();
        System.out.println(c);*/

        System.out.println(c.hashCode());
        System.out.println(c.equals(200));
        System.out.println(c.contains(200));//判断是否包含200
        System.out.println(c.isEmpty());//是否为空集合
        System.out.println(c.remove(100));//删除100
        System.out.println(c);
        System.out.println(c.size());
        Object[] array=c.toArray();
        System.out.println(Arrays.toString(array));

        Collection<Integer> c2=new ArrayList<>();
        c2.add(2);
        c2.add(4);
        c2.add(5);
        System.out.println(c2);

        c.addAll(c2);//将c2的所有元素添加到c集合中
        System.out.println(c);
        System.out.println(c2);

        System.out.println(c.containsAll(c2));//判断c是否包含吃集合的所有元素
        c.retainAll(c2);//保留c集合中那些c2集合也有的元素

        //集合的迭代/遍历
        /**迭代步骤
         * 1.获取集合对应的迭代器
         * 2.通过迭代器判断集合中是否有下一个元素可以迭代
         * 3.通过迭代器获取当前迭代到的元素*/
        Iterator<Integer> it=c2.iterator();
        while (it.hasNext()){
            System.out.println(it.next());
        }




    }
}
